package com.techsoul.module.system.service;

import com.techsoul.common.security.pojo.LoginUser;
import com.techsoul.module.system.pojo.param.LoginParam;
import com.techsoul.module.system.pojo.param.OAuthParam;
import com.techsoul.module.system.pojo.param.UserWeChatSaveParam;
import com.techsoul.module.system.pojo.vo.RouterVo;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * 认证授权 IService
 */
@Service
public interface IAuthService {

    /**
     * 登录
     * @param loginParam
     * @return
     */
    String login(LoginParam loginParam);

    String loginAfterReg(LoginParam loginParam);
    /**
     * 微信登录
     * @param params
     * @return
     */
    String wxAppletLogin(UserWeChatSaveParam params);

    Map<String, Object> getAccessToken(OAuthParam params);

    /**
     * 获取登录用户信息
     * @return
     */
    LoginUser getLoginUser();

    /**
     * 获取登录用户的动态路由信息
     * @return
     */
    List<RouterVo> getRouters();
}
